package com.example.aacwebdemo.agm;

/**
 * @author zhao.xin06679
 * @date 2021年05月25日 16:03
 */
public class Reverse {

    public int reverse(int x) {
        int rev = 0;
        while (x != 0) {
            if (rev < Integer.MIN_VALUE / 10 || rev > Integer.MAX_VALUE / 10) {
                return 0;
            }
            int digit = x % 10;
            x /= 10;
            rev = rev * 10 + digit;
        }
        return rev;
    }

}
//给你一个 32 位的有符号整数 x ，返回将 x 中的数字部分反转后的结果。
//
//        如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ，就返回 0。
//
//        假设环境不允许存储 64 位整数（有符号或无符号）。
//         
//
//        示例 1：
//
//        输入：x = 123
//        输出：321
//        示例 2：
//
//        输入：x = -123
//        输出：-321
//        示例 3：
//
//        输入：x = 120
//        输出：21
//        示例 4：
//
//        输入：x = 0
//        输出：0
//         
//
//        提示：
//
//        -231 <= x <= 231 - 1
//        通过次数712,344提交次数2,010,524
//
//        来源：力扣（LeetCode）
//        链接：https://leetcode-cn.com/problems/reverse-integer
//        著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。